package class01;

/**
 * @ClassName class01.Code06_BSAwesome
 * @Description TODO
 * @Author zhengjiabin
 * @Date 2021/6/3 19:18
 * @Version 1.0
 **/
public class Code06_BSAwesome {

    public static int getLessIndex(int[] arr){
        if (arr == null || arr.length == 0){
            return -1;
        }
        if (arr.length == 1 || arr[0] < arr[1]){
            return 0;
        }
        if (arr[arr.length - 1] < arr[arr.length - 2]){
            return arr.length - 1;
        }
        int left = 0;
        int right = arr.length - 2;
        int mid = 0;
        while (left < right){
            mid = left + ((right - left) >> 1);
            if (arr[mid] > arr[mid - 1]){
                right = mid - 1;
            }else if(arr[mid] > arr[mid + 1]){
                left = mid + 1;
            }else {
                return mid;
            }
        }
        return left;
    }
}
